<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>
<meta name="GENERATOR" content="PasDoc 0.11.0">
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<title>Crispy Plotter Documentation: CPPlotter: Class TCPInputState</title>
<link rel="StyleSheet" type="text/css" href="pasdoc.css">
</head>
<body bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#800080" alink="#FF0000">
<a name="TCPInputState"></a><h1 class="cio">Class TCPInputState</h1>
<table class="sections wide_list">
<tr>
<td><a class="section"  href="#%40Description">Description</a></td><td><a class="section"  href="#%40Hierarchy">Hierarchy</a></td><td>Fields</td><td><a class="section"  href="#%40Methods">Methods</a></td><td><a class="section"  href="#%40Properties">Properties</a></td></tr></table>
<a name="%40Description"></a><h2 class="unit">Unit</h2>
<p class="unitlink">
<a   href="CPPlotter.html">CPPlotter</a></p>
<h2 class="declaration">Declaration</h2>
<p class="declaration">
<code>type TCPInputState = class(TObject)</code></p>
<h2 class="description">Description</h2>
<p>
Processes keyboard and mouse input and performs operations such as view changes on certain mouse and key events. This class handles key and mouse input for a plotter control.</p>
<a name="%40Hierarchy"></a><h2 class="hierarchy">Hierarchy</h2>
<ul class="hierarchy"><li class="ancestor">TObject</li>
<li class="thisitem">TCPInputState</li></ul><h2 class="overview">Overview</h2>
<a name="%40Methods"></a><h3 class="summary">Methods</h3>
<table class="summary wide_list">
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>constructor <b><a   href="CPPlotter.TCPInputState.html#Create">Create</a></b>(Plotter: <a   href="CPPlotter.TCPPlotter.html">TCPPlotter</a>);</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>destructor <b><a   href="CPPlotter.TCPInputState.html#Destroy">Destroy</a></b>; override;</code></td>
</tr>
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>procedure <b><a   href="CPPlotter.TCPInputState.html#MouseLeaving">MouseLeaving</a></b>;</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>procedure <b><a   href="CPPlotter.TCPInputState.html#UpdateMouseState">UpdateMouseState</a></b>(Shift: TShiftState; X, Y: Integer; MouseMove: Boolean);</code></td>
</tr>
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>procedure <b><a   href="CPPlotter.TCPInputState.html#UpdateKeyState">UpdateKeyState</a></b>(Key: Word; FirstHit: Boolean);</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>procedure <b><a   href="CPPlotter.TCPInputState.html#ZoomView">ZoomView</a></b>(ByMouseWheel: Boolean; ZoomStep: Integer);</code></td>
</tr>
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>procedure <b><a   href="CPPlotter.TCPInputState.html#PanView">PanView</a></b>(PanStep: TPoint);</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>procedure <b><a   href="CPPlotter.TCPInputState.html#Draw">Draw</a></b>;</code></td>
</tr>
</table>
<a name="%40Properties"></a><h3 class="summary">Properties</h3>
<table class="summary wide_list">
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>property <b><a   href="CPPlotter.TCPInputState.html#View">View</a></b>: <a   href="CPView.TCPView.html">TCPView</a> read FView write FView;</code></td>
</tr>
</table>
<h2 class="description">Description</h2>
<h3 class="detail">Methods</h3>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><a name="Create"></a><code>constructor <b>Create</b>(Plotter: <a   href="CPPlotter.TCPPlotter.html">TCPPlotter</a>);</code></td>
</tr>
<tr><td colspan="2">
&nbsp;</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><a name="Destroy"></a><code>destructor <b>Destroy</b>; override;</code></td>
</tr>
<tr><td colspan="2">
&nbsp;</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><a name="MouseLeaving"></a><code>procedure <b>MouseLeaving</b>;</code></td>
</tr>
<tr><td colspan="2">
<p>
Adjusts the input state, when the mouse leaves the plotter control.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><a name="UpdateMouseState"></a><code>procedure <b>UpdateMouseState</b>(Shift: TShiftState; X, Y: Integer; MouseMove: Boolean);</code></td>
</tr>
<tr><td colspan="2">
<p>
Updates and checks mouse state (cursor position and prssed mouse buttons.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><a name="UpdateKeyState"></a><code>procedure <b>UpdateKeyState</b>(Key: Word; FirstHit: Boolean);</code></td>
</tr>
<tr><td colspan="2">
<p>
Updates and checks the state of the specified key.   is already pressed and pulses periodically, then false is returned.</p>
<h6 class="description_section">Parameters</h6>
<dl class="parameters">
<dt>Key</dt>
<dd>Key code of pressed or released key</dd>
<dt>FirstHit</dt>
<dd>True, if the key has been recently hit down. If the key</dd>
</dl>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><a name="ZoomView"></a><code>procedure <b>ZoomView</b>(ByMouseWheel: Boolean; ZoomStep: Integer);</code></td>
</tr>
<tr><td colspan="2">
<p>
Zooms vew by the specfied zoom step. The zoom origin depends on the ByMouseWheel, since mouse wheel zoom behavior differs from + and - key zoom behavior.  as zoom origin; otherwise the screen center is used as origin.  on ZoomWheel or ZoomKeypress in TCPlotter.InputOptions.</p>
<h6 class="description_section">Parameters</h6>
<dl class="parameters">
<dt>ByMouseWheel</dt>
<dd>If true, the mouse cursor position will be used</dd>
<dt>ZoomStep</dt>
<dd>Zoom step. The final amount of zooming also depends</dd>
</dl>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><a name="PanView"></a><code>procedure <b>PanView</b>(PanStep: TPoint);</code></td>
</tr>
<tr><td colspan="2">
<p>
Pans view by the specified number of steps in horizontal and vertical direction. The final amount of panning also deppends on PanKeypress defined in TCPlotter.InputOptions.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><a name="Draw"></a><code>procedure <b>Draw</b>;</code></td>
</tr>
<tr><td colspan="2">
<p>
Draws guides for interaction mode</p>
</td></tr>
</table>
<h3 class="detail">Properties</h3>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a   href="legend.html"><img  src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><a name="View"></a><code>property <b>View</b>: <a   href="CPView.TCPView.html">TCPView</a> read FView write FView;</code></td>
</tr>
<tr><td colspan="2">
<p>
Sets or gets view</p>
</td></tr>
</table>
<hr noshade size="1"><span class="appinfo"><em>Generated by <a  target="_parent" href="http://pasdoc.sourceforge.net/">PasDoc 0.11.0</a> on 2009-07-25 15:33:03</em>
</span>
</body></html>
